﻿#include "MaterialCameraNodeViewModel.h"

#include "MaterialGraph/Node/MaterialGraphNodeModel.h"
#include "MaterialGraph/Pin/MaterialGraphPinViewModel.h"
#include "MaterialGraph/CameraNode/MaterialCameraNodeModel.h"

void RMaterialCameraNodeViewModel::BindModel(TSharedObjectPtr<RMaterialGraphNodeModel> InModel, TSharedObjectPtr<RMaterialGraphViewModel> InGraph)
{
    Super::BindModel(InModel,InGraph);
    CameraModel=InModel;

    for(int64_t i=0;i<OutputViewModels.Num();++i)
    {
        OutputViewModels[i]->SetLineIndex(i+1);
    }
}

int64_t RMaterialCameraNodeViewModel::GetLineNum() const
{
    return OutputViewModels.Num()+1;
}

CString RMaterialCameraNodeViewModel::GetOutputPinName(int64_t Index) const
{
    switch (Index)
    {
    case 0:
        return U"绝对位置";
    case 1:
        return U"绝对向前方向";
    case 2:
        return U"绝对向右方向";
    case 3:
        return U"绝对向上方向";

    }
}
